package com.example.hello.service;

import com.example.hello.dto.CategoryDTO;
import com.example.hello.entity.Category;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface CategoryService {
    /**
     * 添加景点类别
     * @param categoryDTO 景点类别数据
     * @return 添加结果
     */
    boolean addCategory(CategoryDTO categoryDTO);

    /**
     * 更新景点类别
     * @param categoryDTO 景点类别数据
     * @return 更新结果
     */
    boolean updateCategory(CategoryDTO categoryDTO);

    /**
     * 删除景点类别
     * @param categoryId 景点类别ID
     * @return 删除结果
     */
    boolean deleteCategory(Integer categoryId);

    /**
     * 获取景点类别详情
     * @param categoryId 景点类别ID
     * @return 景点类别信息
     */
    Category getCategoryById(Integer categoryId);

    /**
     * 获取所有景点类别
     * @return 景点类别列表
     */
    List<Category> getAllCategories();

    /**
     * 分页获取景点类别列表
     * @param category 查询条件
     * @param pageNum 页码
     * @param pageSize 每页大小
     * @return 分页数据
     */
    PageInfo<Category> getCategoryList(Category category, Integer pageNum, Integer pageSize);
} 